<%@page contentType="text/html;charset=utf-8" language="java" %>
<!--
JSP 是 Java Server Pages
允许在页面中 使用 Java 作为脚本语言
动态生成HTML代码

jsp 首先和html的区别:
html 可以直接放在浏览器中运行
但是 jsp 必须把tomcat 启动起来 才能看到效果

JSP页面由以下几部分组成
1. 静态内容
2. 指令
3. 表达式
4. 脚本
5. 声明
6. 注释
-->

<!--
1. 注释:

第一种: 跟html注释一样,这里就是第一种
在客户端 可以看见
-->

<%--
这里是第二种jsp注释
在客户端看不见,在编译时,会被干掉
--%>


<%
    // 标准Java注释
    /* 这里也是标准
    Java注释
    这种注释 只能写在jsp脚本中
    */
    out.println("Hello World");
%>

<%--
JSP指令
JSP页面 可以在最上方加入一些 当前页面的配置等信息
叫做JSP指令,
JSP指令一共有3个
page : 当前页面的配置信息,最为常用的
include : 在一个页面中,将另一个文件嵌入其中
taglib : 引入标签库,这个基本不会讲了

Page指令:
语法:
<%@ page 属性1="属性值" 属性2="属性值".... %>
常见属性:
1. language: 指定当前jsp页面所使用的脚本语言,默认值是java
2. import: 引包,当页面中使用到其他包下的Java类时,使用该属性引包
3. contentType: 为页面添加响应头 contentType,默认值是:
        text/html;ISO-8859-1,我们需要改成utf-8
4. pageEncoding: 设置当前页面的编码格式,默认值是ISO-8859-1,
    如果设置了contentType,那么就会跟contentType保持一致,不需要
    单独设置了

5. errorPage: 当前页面出错了,浏览器会自动跳转到哪个页面,
   只能决定当前这个jsp出错行为,我们一般会使用web.xml去统一配置
   整个项目的出错页面,而不会一个jsp一个jsp的配置
6. isErrorPage: 是否是 专门处理错误信息的页面,标记为true后
    可以使用JSP 九大内置对象中的Exception

--%>

<%--jsp脚本--%>

<%
// 在这里写java代码
// 可以写任何java代码,但是 不能够定义方法,全局变量
// 所有的jsp脚本 会原样的复制进 _jspService方法中
    /*
    里面只能写java代码,
    并且 所有的jsp脚本,都会和html代码混合复制进_jspService方法中
    所以不需要在一个脚本中 写一段完整的java代码,
    示例看test01,table 隔行换色
     */
%>

<%--
静态内容 ,所有直接写在jsp文件中的
没有被任何jsp标签 包裹的 都是 静态内容
即 所有的html代码 就是静态内容
--%>

<%--
声明: 用来写自定义方法,成员变量的
见 Test02
--%>

<%--
表达式
表达式是在html代码中 为了使用声明中定义的全局变量
或 jsp脚本中定义的 局部变量 而存在的
即表达式 是没有复杂逻辑,只能取值用的

--%>

